Page({
    data: {
      expertName: 'XXX',
      currentType: 'text', // 默认图文咨询
      content: '',
      images: [],
      timeOptions: ['15分钟', '30分钟', '60分钟'],
      timeIndex: 0
    },
  
    onLoad(options) {
      const { name, type } = options;
      this.setData({
        expertName: name,
        currentType: type || 'text'
      });
    },
  
    // 切换咨询类型
    onTypeChange(e) {
      const type = e.currentTarget.dataset.type;
      this.setData({ currentType: type });
    },
  
    // 问题描述输入
    onContentInput(e) {
      this.setData({ content: e.detail.value });
    },
  
    // 选择图片
    onChooseImage() {
      wx.chooseImage({
        count: 3 - this.data.images.length,
        sourceType: ['album', 'camera'],
        success: (res) => {
          const tempFilePaths = res.tempFilePaths;
          this.setData({
            images: [...this.data.images, ...tempFilePaths]
          });
        }
      });
    },
  
    // 删除图片
    onDeleteImage(e) {
      const index = e.currentTarget.dataset.index;
      const images = this.data.images;
      images.splice(index, 1);
      this.setData({ images });
    },
  
    // 选择通话时长
    onTimeChange(e) {
      this.setData({ timeIndex: e.detail.value });
    },
  
    // 提交咨询
    onSubmit() {
      const { currentType, content, images } = this.data;
  
      // 表单校验
      if (currentType === 'text' && !content.trim()) {
        wx.showToast({ title: '请描述您的问题', icon: 'none' });
        return;
      }
  
      // 模拟提交数据（实际项目中替换为接口请求）
      wx.showLoading({ title: '提交中...' });
      
      setTimeout(() => {
        wx.hideLoading();
        wx.showToast({ title: '咨询已提交' });
        
        // 提交成功后跳转回专家列表或我的咨询
        wx.navigateBack({
          delta: 1
        });
  
        // 此处可添加向医生端推送消息的逻辑（通过云函数或后端接口）
      }, 1000);
    }
  });